The present application relates to detecting objects from three-dimensional (3D) data. Applications thereof include training a classifier to correct misclassified data points.
The “background” description provided herein is for the purpose of generally presenting the context of this disclosure. Work of the presently named inventors, to the extent it is described in this background section, as well as aspects of the description which may not otherwise qualify as prior art at the time of filing, are neither expressly or impliedly admitted as prior art against the present invention.
Autonomous driving in urban environments requires the ability to quickly identify navigable terrain from potential obstacles. As mobile robots move from structured test environments to real-world scenarios, robotic perception systems must become more competent in navigating through dynamic environments. In addition to determining local navigability, perception systems should also identify the location and class of obstacles within the scene.
Vehicles in the 2007 DARPA Urban Challenge used a combination of LIDAR (light detection and ranging), vision, and radar for obstacle detection. Each of these sensors has its own unique advantages and challenges, but in this disclosure, primary attention is directed to the use of LIDAR sensors to directly acquire 3D point clouds from objects within a scene.
Mobile robotics are naturally dependent on planning paths in metric space; using point clouds greatly simplifies the problem of acquiring relative obstacle pose, but has its own unique challenges in obstacle detection and classification. LIDAR data becomes much sparser away from the sensor, and laser typically lacks high-resolution texture data that can be used for feature generation.
Simple strategies, such as ground point removal by height thresholding, work in simple environments, but are not robust in real-world autonomous driving scenes. Moreover, simple systems are difficult to tune correctly. A classifier with a high false-positive rate may cause an autonomous vehicle to take sub-optimal paths, or produce uncomfortable stop-and-go behavior.
The problem of obstacle detection and classification from 3D point clouds can be approached using local feature-based classifiers solved as a joint inference labeling problem or a combination of both. Several approaches have also tried to directly train classifiers to recognize specific objects in a scene. In general, the techniques which use global labeling by the joint distribution of features and labels outperform the local classifier techniques. However, this improvement in classifier performance comes at greatly increased computational cost.
Autonomous driving systems require both high accuracy and rapid classification to perform at modest street-driving velocities. During the 2007 DARPA Urban Challenge, vehicles with uncertain obstacle maps were able to slow down and take more sensor measurements. This option may not always be available.
Dahlkamp et al. in “Self-supervised Monocular Road Detection in Desert Terrain,” Robotics: Science and Systems II, The MIT Press, 2007, demonstrate the bootstrapping of a vision-based classifier in cases where the features indicative of obstacles may change over time. Similarly, due to the wide variety of autonomous driving situations, it is challenging to generate a large human-labeled 3D point cloud for use as a training data in a machine learning algorithm.
Many recent mobile robotics applications have incorporated the use of 3D LIDAR sensors as an important component in scene understanding due to frequent data measurements and direct observation of geometric relationships. However, the sparseness of point cloud information and the lack of unique cues at an individual point level presents challenges in algorithm design for obstacle detection, segmentation, and tracking.
Since individual measurements yield less information about the presence of obstacles, many algorithmic approaches model the joint posterior of point-labels. Such approaches can produce robust point labelings at higher computation cost.